package org.jeecg.modules.wlhy.hyvehicle.entity;


import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;

import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.math.BigDecimal;



@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ImportHyVehiceDTO implements Serializable {
    private static final long serialVersionUID = 1L;


    /**车辆牌照号**/
    @Excel(name = "车辆牌照号", width = 15)
    @ApiModelProperty(value = "车辆牌照号")
    private String vehicleNumber;


    /**车牌颜色代码**/
    @Excel(name = "车牌颜色", width = 15, dicCode = "vehicle_plate_color_code")
    @Dict(dicCode = "vehicle_plate_color_code")
    @ApiModelProperty(value = "车牌颜色")
    private String vehiclePlateColorCode;

    /**车辆类型代码*/
    @Excel(name = "车辆类型", width = 15,dictTable = "hy_vehicle_type" )
    @Dict(dictTable = "hy_vehicle_type", dicText = "text", dicCode = "id")
    @ApiModelProperty(value = "车辆类型")
    private String vehicleType;

    /**所有人*/
    @Excel(name = "所有人", width = 15)
    @ApiModelProperty(value = "所有人")
    private String owner;

    /**使用性质*/
    @Excel(name = "使用性质", width = 15)
    @ApiModelProperty(value = "使用性质")
    private String useCharacter;

    /**车辆识别代号*/
    @Excel(name = "车辆识别代号", width = 15)
    @ApiModelProperty(value = "车辆识别代号")
    private String vin;

    /**发证机关*/
    @Excel(name = "发证机关", width = 15,type = 4)
    @ApiModelProperty(value = "发证机关")
    private String  issuingOrganizations;

    /**注册日期*/
    @Excel(name = "注册日期", width = 15,type = 4)
    @ApiModelProperty(value = "注册日期")
//    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
//    @DateTimeFormat(pattern="yyyy-MM-dd")
    private String registerDate;

    /**发证日期*/
    @Excel(name = "发证日期", width = 15,type = 4)
    @ApiModelProperty(value = "发证日期")
//    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
//    @DateTimeFormat(pattern="yyyy-MM-dd")
    private String issueDate;

    /**车辆能源类型*/
    @Excel(name = "车辆能源类型", width = 15,type = 4,dicCode = "vehicle_energy_type")
    @Dict(dicCode = "vehicle_energy_type")
    @ApiModelProperty(value = "车辆能源类型")
    private String vehicleEnergyType;

    /**核定载质量*/
    @Excel(name = "核定载质量", width = 15,type = 4)
    @ApiModelProperty(value = "核定载质量")
    private BigDecimal vehicleTonnage;


    /**吨位*/
    @Excel(name = "吨位", width = 15,type = 4)
    @ApiModelProperty(value = "吨位")
    private BigDecimal grossMass;


    /**道路运输证号*/
    @Excel(name = "道路运输证号", width = 15,type = 4)
    @ApiModelProperty(value = "道路运输证号")
    private String roadTransportCertificateNumber;


    /**长*/
    @Excel(name = "长", width = 15,type = 4)
    @ApiModelProperty(value = "长")
    private String vehicle_long;

    /**宽*/
    @Excel(name = "宽", width = 15,type = 4)
    @ApiModelProperty(value = "宽")
    private String vehicle_width;

    /**高*/
    @Excel(name = "高", width = 15,type = 4)
    @ApiModelProperty(value = "高")
    private String vehicle_height;

    /**品牌型号*/
    @Excel(name = "品牌型号", width = 15,type = 4)
    @ApiModelProperty(value = "品牌型号")
    private String brand_name;

    /**行驶证档案编号*/
    @Excel(name = "行驶证档案编号", width = 15,type = 4)
    @ApiModelProperty(value = "行驶证档案编号")
    private String driving_license_num;

    /**挂车牌照号*/
    @Excel(name = "挂车牌照号", width = 15,type = 4)
    @ApiModelProperty(value = "挂车牌照号")
    private String trailer_vehicle_plate_number;


    /**道路运输证上的业户名称*/
    @Excel(name = "道路运输证上的业户名称", width = 15,type = 4)
    @ApiModelProperty(value = "道路运输证上的业户名称")
    private String road_transport_name;


    /**车籍地（行驶证住址）*/
    @Excel(name = "车籍地（行驶证住址）", width = 15,type = 4)
    @ApiModelProperty(value = "车籍地（行驶证住址）")
    private String vehicle_address;



    /**机动车登记证书编号*/
    @Excel(name = "机动车登记证书编号", width = 15,type = 4)
    @ApiModelProperty(value = "机动车登记证书编号")
    private String regist_cert_no;

    /**经营许可证号*/
    @Excel(name = "经营许可证号", width = 15,type = 4)
    @ApiModelProperty(value = "经营许可证号")
    private String business_license;


    /**道路运输证过期时间*/
    @Excel(name = "道路运输证过期时间", width = 15,type = 4)
    @ApiModelProperty(value = "道路运输证过期时间")
    private String road_transport_expired_date;

    //Added at 2023-07-16 for 增加图片URL导入
    /**行驶证(正面)*/
    @Excel(name = "行驶证正面照片", width = 15)
    @ApiModelProperty(value = "行驶证正面照片URL")
    private java.lang.String drivingLicenseImg;

    /**行驶证副页*/
    @Excel(name = "行驶证反面照片", width = 15)
    @ApiModelProperty(value = "行驶证反面照片URL")
    private java.lang.String drivingLicenseImg2;

    /** 道路运输证(正面) */
    @Excel(name = "道路运输证正面照片", width = 15)
    @ApiModelProperty(value = " 道路运输证正面URL")
//	@NotEmpty(message = "道路运输证(正面)不允许为空")
    private java.lang.String roadTransportImg;

    /**
     * 人车合照
     */
    @Excel(name = "人车合照", width = 15)
    @ApiModelProperty(value = " 人车合照")
    private String vehicleImg;

    @Excel(name = "挂车车辆类型", width = 15)
    @ApiModelProperty(value = "挂车类型")
    @Dict(dictTable = "hy_vehicle_type", dicText = "text", dicCode = "id")
    private String trailerVehicleType;

    /**挂车行驶证(正面)*/
    @Excel(name = "挂车行驶证正面照片", width = 15)
    @ApiModelProperty(value = "挂车行驶证正面照片")
    private String trailerVehiclLicenseImg;

    /**挂车行驶证(副页)*/
    @Excel(name = "挂车行驶证反面照片", width = 15)
    @ApiModelProperty(value = "挂车行驶证反面照片")
    private String trailerVehiclLicenseImg2;

    @Excel(name = "挂车道路运输证正面照片", width = 15)
    @ApiModelProperty(value = "挂车道路运输证正面照片")
    private String trailerVehicleRoadTransportImg;

    @Excel(name = "挂车道路运输证号", width = 15)
    @ApiModelProperty(value = "挂车道路运输证号")
    private String trailerVehicleRoadTransportNumber;

    @Excel(name = "创建时间", width = 15)
    private String createTime;
}
